জাভাস্ক্রিপ্টে অপারেটর অগ্রাধিকার নির্ধারণ করে কোন অপারেটরটি প্রথমে কার্যকর হবে যখন একাধিক অপারেটর একই এক্সপ্রেশনে উপস্থিত থাকে। অর্থাৎ, যখন আপনি একটি এক্সপ্রেশন লিখবেন, তখন জাভাস্ক্রিপ্ট এই অপারেটরগুলিকে নির্দিষ্ট অগ্রাধিকার অনুযায়ী মূল্যায়ন করবে।
যেমন, যদি আপনি একটি এক্সপ্রেশনে একাধিক অপারেটর ব্যবহার করেন, তবে অপারেটর অগ্রাধিকার অনুসারে জাভাস্ক্রিপ্ট প্রথমে কোন অপারেটরটি কার্যকর করবে তা নির্ধারণ করে।
নিচে জাভাস্ক্রিপ্টের অপারেটর অগ্রাধিকার তালিকা দেওয়া হলো, যেখানে প্রাধান্য পাওয়া অপারেটরগুলো উপরের দিকে থাকবে এবং কম প্রাধান্য পাওয়া অপারেটরগুলো নিচে থাকবে।
()
– (গ্রুপিং বা প্যারেনথেসিস)গ্রুপিং অপারেটরটি সবচেয়ে বেশি প্রাধান্য পায়। এটি এক্সপ্রেশনের মধ্যে কোনো অংশকে আগে কার্যকর করার জন্য ব্যবহৃত হয়।
let result = (2 + 3) * 5; // (2 + 3) প্রথমে হিসাব হবে, তারপর গুণফল হবে
console.log(result); // আউটপুট: 25
++
, --
(ইনক্রিমেন্ট এবং ডিক্রিমেন্ট)এই অপারেটরগুলি একক পরিবর্তন করতে ব্যবহৃত হয়, এবং এগুলির অগ্রাধিকার অন্য কিছু অপারেটরের থেকে বেশি।
let a = 5;
console.log(++a); // আউটপুট: 6 (প্রিপোসেটিভ ইনক্রিমেন্ট)
console.log(a--); // আউটপুট: 6 (পোস্টপোসেটিভ ডিক্রিমেন্ট)
!
এই অপারেটরটি লজিক্যাল NOT অপারেশন করতে ব্যবহৃত হয় এবং এর অগ্রাধিকার অনেক বেশি।
let isTrue = false;
console.log(!isTrue); // আউটপুট: true
*
, /
, %
(গুণ, ভাগ, ভাগফল)+
, -
(যোগ, বিয়োগ)গাণিতিক অপারেটরগুলির মধ্যে গুণ, ভাগ, ভাগফল এবং যোগ, বিয়োগের অপারেটরগুলির অগ্রাধিকার স্তরের মধ্যে কিছু পার্থক্য রয়েছে। গুণ, ভাগ, ভাগফল গুলি যোগ এবং বিয়োগের চেয়ে বেশি অগ্রাধিকার পায়।
let result = 2 + 3 * 5; // গুণফল প্রথমে হবে, তারপর যোগফল
console.log(result); // আউটপুট: 17
==
, ===
, !=
, !==
, <
, <=
, >
, >=
(তুলনা অপারেটর)তুলনা অপারেটরগুলির অগ্রাধিকার গাণিতিক অপারেটরের পরে থাকে, কিন্তু গ্রুপিং বা ইনক্রিমেন্ট/ডিক্রিমেন্ট অপারেটরের পরে নয়।
let a = 10;
let b = 20;
console.log(a < b); // আউটপুট: true
&&
, ||
(লজিক্যাল AND, লজিক্যাল OR)লজিক্যাল অপারেটরের অগ্রাধিকার তুলনা অপারেটরের পরে থাকে।
let a = true;
let b = false;
console.log(a && b); // আউটপুট: false
console.log(a || b); // আউটপুট: true
=
, +=
, -=
, *=
, /=
, %=
(অ্যাসাইনমেন্ট)অ্যাসাইনমেন্ট অপারেটরগুলির অগ্রাধিকার সবচেয়ে কম। সাধারণত, অন্যান্য অপারেটরগুলি মূল্যায়ন হওয়ার পর অ্যাসাইনমেন্ট অপারেটর কার্যকর হয়।
let a = 5;
a += 3; // ৫ + ৩ হবে, তারপর ৮ হবে
console.log(a); // আউটপুট: 8
নিচে একটি চিত্রের মাধ্যমে অপারেটর অগ্রাধিকারকে আরও স্পষ্টভাবে বুঝানো হলো:
1. ()
2. ++, --, !
3. * , / , %
4. + , -
5. <, <=, >, >=, ==, !=, ===, !==
6. && (AND)
7. || (OR)
8. =, +=, -=, *=, /=, %=
let result = 5 + 3 * 2; // প্রথমে গুণফল হবে, তারপর যোগফল
console.log(result); // আউটপুট: 11
let a = 10, b = 20;
console.log(a < b && b > 15); // লজিক্যাল AND অপারেটর আগে কার্যকর হবে
console.log(a < b || b > 25); // লজিক্যাল OR অপারেটর আগে কার্যকর হবে
জাভাস্ক্রিপ্টের অপারেটর অগ্রাধিকার নির্ধারণ করে যে, এক্সপ্রেশনটি কোন অপারেটর দিয়ে প্রথমে মূল্যায়ন হবে। গ্রুপিং অপারেটর সর্বোচ্চ অগ্রাধিকার পায়, এবং পরে গাণিতিক, তুলনা, লজিক্যাল, এবং অ্যাসাইনমেন্ট অপারেটরগুলো আসে। অপারেটর অগ্রাধিকার ঠিকভাবে বোঝা গুরুত্বপূর্ণ, কারণ এটি কোডের আউটপুটে প্রভাব ফেলতে পারে।
common.read_more